\n ").concat(r.name,"\n ").concat(r.help(Math.max(1,e.perks[r.id])),"\n
\n ").concat(t.reverse().join(""),"\n".concat(et("score_panel.upgrades_picked"),"
")+r.join("")}function ej(e,r){if(!e.perks.clairvoyant||e.creative)return"";for(var a="",t=0;t".concat(et("score_panel.upcoming_levels"),"
").concat(a,"
")}function eH(e){return e.level}function eD(e){return -1!==e.bricks.indexOf(e.ballsColor)}function eF(e){if(!e.perks.reach)return -1;for(var r=e.level.size,a=-1,t=-1,n=-1,i=0;i".concat(P,"\n ")]})];case 7:M.sent(),M.label=8;case 8:if("rename"===p&&(C=prompt(et("editor.editing.rename_prompt"),t.name))&&(t.name=C),"credit"===p&&"null"!==(R=prompt(et("editor.editing.credit_prompt"),t.credit||""))&&(t.credit=R||""),"delete"===p)return U("custom_levels",a=a.filter(function(r,a){return a!==e})),rD(),[2];M.label=9;case 9:return t.color=eu(n),U("custom_levels",a),rI(e,r),[2]}})})).apply(this,arguments)}var W=k("5mG9B"),M=k("6QuVk"),rV={},rN=r(JSON.parse('{"71 mini":{"minScore":0,"required":[],"forbidden":[]},"Butterfly":{"minScore":0,"required":[],"forbidden":[]},"Castle":{"minScore":0,"required":[],"forbidden":[]},"Eyes":{"minScore":0,"required":[],"forbidden":[]},"Creeper":{"minScore":0,"required":[],"forbidden":[]},"Stairs":{"minScore":0,"required":[],"forbidden":[]},"Dots":{"minScore":0,"required":[],"forbidden":[]},"Lines":{"minScore":0,"required":[],"forbidden":[]},"Heart":{"minScore":0,"required":[],"forbidden":[]},"Swiss":{"minScore":0,"required":[],"forbidden":[]},"Germany":{"minScore":0,"required":[],"forbidden":[]},"France":{"minScore":100,"required":[],"forbidden":[]},"Smiley":{"minScore":200,"required":[],"forbidden":[]},"Labyrinthe":{"minScore":300,"required":[],"forbidden":[]},"Temple":{"minScore":400,"required":[],"forbidden":[]},"Pacman":{"minScore":500,"required":[],"forbidden":[]},"Ship":{"minScore":600,"required":[],"forbidden":[]},"We come in peace":{"minScore":700,"required":[],"forbidden":[]},"Space mushroom":{"minScore":800,"required":[],"forbidden":[]},"Wololo":{"minScore":900,"required":[],"forbidden":[]},"Small heart":{"minScore":1000,"required":[],"forbidden":[]},"Eye":{"minScore":1100,"required":["streak_shots"],"forbidden":["base_combo"]},"Enderman":{"minScore":1200,"required":["streak_shots"],"forbidden":["viscosity"]},"Mushroom":{"minScore":1300,"required":["streak_shots"],"forbidden":["base_combo"]},"Tulip":{"minScore":1400,"required":["viscosity"],"forbidden":["left_is_lava"]},"Chain":{"minScore":1500,"required":["left_is_lava"],"forbidden":["right_is_lava"]},"Marion":{"minScore":1600,"required":["viscosity"],"forbidden":["left_is_lava"]},"Renan":{"minScore":1700,"required":["viscosity"],"forbidden":["skip_last"]},"Violet Pairs":{"minScore":1800,"required":["skip_last"],"forbidden":["base_combo"]},"Red Cups":{"minScore":1900,"required":["skip_last"],"forbidden":["viscosity"]},"Cactus":{"minScore":2000,"required":["right_is_lava"],"forbidden":["skip_last"]},"Sunny Face":{"minScore":2100,"required":["streak_shots","base_combo"],"forbidden":["smaller_puck","skip_last"]},"Mountain":{"minScore":2200,"required":["smaller_puck","streak_shots"],"forbidden":["left_is_lava","skip_last"]},"Dollar":{"minScore":2300,"required":["pierce","smaller_puck"],"forbidden":["left_is_lava","base_combo"]},"Waves":{"minScore":2400,"required":["left_is_lava","smaller_puck"],"forbidden":["picky_eater","pierce"]},"Box":{"minScore":2500,"required":["left_is_lava","picky_eater"],"forbidden":["smaller_puck","base_combo"]},"Rose":{"minScore":2600,"required":["compound_interest","picky_eater"],"forbidden":["left_is_lava","base_combo"]},"Time":{"minScore":2700,"required":["picky_eater","right_is_lava"],"forbidden":["pierce","left_is_lava"]},"Watermelon":{"minScore":2800,"required":["hot_start","base_combo"],"forbidden":["pierce","right_is_lava"]},"Worms":{"minScore":2900,"required":["picky_eater","hot_start"],"forbidden":["right_is_lava","pierce"]},"Ocean Sunrise":{"minScore":3000,"required":["smaller_puck","hot_start"],"forbidden":["streak_shots","telekinesis"]},"Crosses":{"minScore":3100,"required":["pierce","sapper"],"forbidden":["smaller_puck","compound_interest"]},"Negative space":{"minScore":3200,"required":["left_is_lava","smaller_puck"],"forbidden":["right_is_lava","hot_start"]},"UK":{"minScore":3300,"required":["right_is_lava","left_is_lava"],"forbidden":["base_combo","smaller_puck"]},"Greece":{"minScore":3400,"required":["left_is_lava","right_is_lava"],"forbidden":["telekinesis","hot_start"]},"Russia":{"minScore":3500,"required":["compound_interest","bigger_explosions"],"forbidden":["sapper","pierce"]},"Ukraine":{"minScore":3600,"required":["pierce","sapper"],"forbidden":["base_combo","bigger_explosions"]},"Poland":{"minScore":3700,"required":["viscosity","picky_eater"],"forbidden":["skip_last","pierce"]},"Yellow 71":{"minScore":3800,"required":["base_combo","viscosity"],"forbidden":["picky_eater","skip_last"]},"71 on white":{"minScore":3900,"required":["viscosity","picky_eater"],"forbidden":["compound_interest","skip_last"]},"Blue 71":{"minScore":4000,"required":["compound_interest","pierce_color"],"forbidden":["left_is_lava","viscosity"]},"Seventy one":{"minScore":4100,"required":["viscosity","base_combo"],"forbidden":["left_is_lava","pierce_color"]},"B71":{"minScore":4200,"required":["skip_last","viscosity"],"forbidden":["telekinesis","left_is_lava"]},"Pig":{"minScore":4300,"required":["skip_last","viscosity"],"forbidden":["ball_repulse_ball","telekinesis"]},"Big Pig":{"minScore":4400,"required":["pierce","sapper"],"forbidden":["skip_last","compound_interest"]},"Donkey Kong":{"minScore":4500,"required":["ball_attract_ball","right_is_lava"],"forbidden":["bigger_explosions","skip_last"]},"Banana":{"minScore":4600,"required":["right_is_lava","soft_reset"],"forbidden":["base_combo","skip_last"]},"Fox":{"minScore":4700,"required":["ball_repulse_ball","puck_repulse_ball"],"forbidden":["right_is_lava","skip_last"]},"Wiki":{"minScore":4800,"required":["base_combo","sapper"],"forbidden":["compound_interest","pierce"]},"Baby Dog":{"minScore":4900,"required":["bigger_explosions","pierce"],"forbidden":["sapper","compound_interest"]},"dog 21":{"minScore":5000,"required":["ball_attract_ball","respawn"],"forbidden":["telekinesis","right_is_lava"]},"A":{"minScore":5100,"required":["telekinesis","base_combo","sturdy_bricks"],"forbidden":["hot_start","top_is_lava","bigger_puck"]},"B":{"minScore":5200,"required":["pierce","hot_start","telekinesis"],"forbidden":["sapper","ball_repulse_ball","puck_repulse_ball"]},"C":{"minScore":5300,"required":["hot_start","telekinesis","compound_interest"],"forbidden":["top_is_lava","bigger_puck","bigger_explosions"]},"D":{"minScore":5400,"required":["hot_start","bigger_explosions","ball_attract_ball"],"forbidden":["telekinesis","soft_reset","compound_interest"]},"e":{"minScore":5500,"required":["respawn","hot_start","telekinesis"],"forbidden":["ball_attract_ball","top_is_lava","bigger_puck"]},"Elephant":{"minScore":5600,"required":["ball_repulse_ball","puck_repulse_ball","soft_reset"],"forbidden":["base_combo","sapper","telekinesis"]},"Orca":{"minScore":5700,"required":["pierce","sapper","respawn"],"forbidden":["concave_puck","telekinesis","compound_interest"]},"Shark":{"minScore":5800,"required":["bigger_explosions","compound_interest","base_combo"],"forbidden":["right_is_lava","concave_puck","ball_attract_ball"]},"Bird":{"minScore":5900,"required":["right_is_lava","concave_puck","sturdy_bricks"],"forbidden":["ball_attract_ball","streak_shots","soft_reset"]},"Tux":{"minScore":6000,"required":["pierce","coin_magnet","bigger_puck"],"forbidden":["sapper","top_is_lava","helium"]},"Armenia":{"minScore":6100,"required":["top_is_lava","respawn","bigger_puck"],"forbidden":["base_combo","coin_magnet","ball_repulse_ball"]},"Austria":{"minScore":6200,"required":["top_is_lava","telekinesis","bigger_puck"],"forbidden":["coin_magnet","viscosity","unbounded"]},"Benin":{"minScore":6300,"required":["telekinesis","right_is_lava","bigger_explosions"],"forbidden":["viscosity","top_is_lava","unbounded"]},"Botswana":{"minScore":6400,"required":["viscosity","telekinesis","unbounded"],"forbidden":["sturdy_bricks","soft_reset","right_is_lava"]},"Bulgaria":{"minScore":6500,"required":["helium","puck_repulse_ball","unbounded"],"forbidden":["ball_repulse_ball","viscosity","pierce"]},"Canada":{"minScore":6600,"required":["skip_last","respawn","base_combo"],"forbidden":["asceticism","unbounded","telekinesis"]},"Chad":{"minScore":6700,"required":["compound_interest","bigger_explosions","skip_last"],"forbidden":["concave_puck","streak_shots","telekinesis"]},"China":{"minScore":6800,"required":["nbricks","concave_puck","streak_shots"],"forbidden":["ball_attract_ball","skip_last","base_combo"]},"Colombia":{"minScore":6900,"required":["streak_shots","smaller_puck","concave_puck"],"forbidden":["puck_repulse_ball","ball_repulse_ball","sapper"]},"Republic of the Congo":{"minScore":7000,"required":["ball_repulse_ball","puck_repulse_ball","coin_magnet"],"forbidden":["bigger_puck","top_is_lava","skip_last"]},"Côte d\'Ivoire":{"minScore":7100,"required":["coin_magnet","bigger_puck","top_is_lava"],"forbidden":["base_combo","etherealcoins","telekinesis"]},"Denmark":{"minScore":7200,"required":["bigger_explosions","coin_magnet","etherealcoins"],"forbidden":["respawn","bigger_puck","top_is_lava"]},"El Salvador":{"minScore":7300,"required":["bigger_puck","top_is_lava","helium"],"forbidden":["pierce","coin_magnet","sapper"]},"Egypt":{"minScore":7400,"required":["zen","top_is_lava","soft_reset"],"forbidden":["bigger_puck","telekinesis","puck_repulse_ball"]},"Estonia":{"minScore":7500,"required":["zen","telekinesis","hot_start"],"forbidden":["top_is_lava","bigger_puck","concave_puck"]},"Finland":{"minScore":7600,"required":["concave_puck","hot_start","telekinesis"],"forbidden":["zen","compound_interest","base_combo"]},"Gabon":{"minScore":7700,"required":["respawn","ball_attract_ball","zen"],"forbidden":["streak_shots","sturdy_bricks","hot_start"]},"Georgia":{"minScore":7800,"required":["helium","zen","smaller_puck"],"forbidden":["pierce","telekinesis","sapper"]},"Guinea":{"minScore":7900,"required":["zen","nbricks","smaller_puck"],"forbidden":["pierce_color","left_is_lava","ball_repulse_ball"]},"Indonesia":{"minScore":8000,"required":["trampoline","zen","right_is_lava"],"forbidden":["nbricks","coin_magnet","hot_start"]},"Pingwin":{"minScore":8100,"required":["zen","compound_interest","pierce"],"forbidden":["right_is_lava","sturdy_bricks","helium"]},"Dog 8":{"minScore":8200,"required":["zen","ball_attract_ball","coin_magnet"],"forbidden":["sacrifice","sturdy_bricks","bigger_puck"]},"Sunglasses":{"minScore":8300,"required":["zen","sacrifice","coin_magnet"],"forbidden":["respawn","bigger_puck","top_is_lava"]},"Balloon":{"minScore":8400,"required":["soft_reset","coin_magnet","zen"],"forbidden":["concave_puck","sacrifice","bigger_puck"]},"Opening":{"minScore":8500,"required":["streak_shots","bigger_puck","top_is_lava"],"forbidden":["zen","etherealcoins","coin_magnet"]},"Stripes":{"minScore":8600,"required":["helium","base_combo","zen"],"forbidden":["top_is_lava","ball_attract_ball","bigger_puck"]},"You are here":{"minScore":8700,"required":["zen","forgiving","telekinesis"],"forbidden":["smaller_puck","viscosity","top_is_lava"]},"Gear":{"minScore":8800,"required":["pierce_color","telekinesis","left_is_lava"],"forbidden":["unbounded","respawn","zen"]},"Play":{"minScore":8900,"required":["zen","right_is_lava","skip_last"],"forbidden":["ball_attracts_coins","telekinesis","unbounded"]},"City":{"minScore":9000,"required":["passive_income","asceticism","soft_reset"],"forbidden":["hot_start","ball_repulse_ball","base_combo"]},"Wiggle":{"minScore":9100,"required":["right_is_lava","trampoline","ball_attracts_coins"],"forbidden":["sturdy_bricks","hot_start","compound_interest"]},"Graph":{"minScore":9200,"required":["hot_start","shocks","sapper"],"forbidden":["pierce","ball_attract_ball","ball_attracts_coins"]},"Lightbulb":{"minScore":9300,"required":["hot_start","passive_income","helium"],"forbidden":["trampoline","ball_attracts_coins","pierce"]},"Note":{"minScore":9400,"required":["ball_repulse_ball","puck_repulse_ball","nbricks"],"forbidden":["hot_start","respawn","etherealcoins"]},"Rocket":{"minScore":9500,"required":["etherealcoins","soft_reset","asceticism"],"forbidden":["coin_magnet","hot_start","bigger_puck"]},"Abstract":{"minScore":9600,"required":["bigger_explosions","compound_interest","etherealcoins"],"forbidden":["coin_magnet","passive_income","nbricks"]},"Fingerprint":{"minScore":9700,"required":["pierce","sapper","shocks"],"forbidden":["base_combo","implosions","helium"]},"Leaf":{"minScore":9800,"required":["concave_puck","sacrifice","puck_repulse_ball"],"forbidden":["coin_magnet","trampoline","ball_repulse_ball"]},"Abstract 2":{"minScore":9900,"required":["coin_magnet","streak_shots","sacrifice"],"forbidden":["bigger_puck","top_is_lava","right_is_lava"]},"Abstract 3":{"minScore":10000,"required":["sacrifice","nbricks","etherealcoins"],"forbidden":["shocks","sapper","asceticism"]},"Abstract 4":{"minScore":10100,"required":["trampoline","bigger_explosions","sacrifice"],"forbidden":["ball_attracts_coins","ghost_coins","ball_attract_ball"]},"Abstract 5":{"minScore":10200,"required":["ball_attracts_coins","implosions","forgiving"],"forbidden":["viscosity","base_combo","unbounded"]},"Abstract 6":{"minScore":10300,"required":["puck_repulse_ball","ball_repulse_ball","forgiving"],"forbidden":["viscosity","unbounded","passive_income"]},"Hemiola":{"minScore":10400,"required":["limitless","unbounded","viscosity"],"forbidden":["right_is_lava","forgiving","sturdy_bricks"]},"Obigre":{"minScore":10500,"required":["sapper","shocks","soft_reset"],"forbidden":["bigger_explosions","pierce","skip_last"]},"Noodlemire":{"minScore":10600,"required":["skip_last","concave_puck","passive_income"],"forbidden":["ball_attract_ball","side_flip","side_kick"]},"Bearded axe":{"minScore":10700,"required":["base_combo","streak_shots","side_flip"],"forbidden":["side_kick","implosions","concave_puck"]},"Lebanon":{"minScore":10800,"required":["side_kick","side_flip","etherealcoins"],"forbidden":["smaller_puck","streak_shots","trampoline"]},"Spain":{"minScore":10900,"required":["smaller_puck","passive_income","compound_interest"],"forbidden":["fountain_toss","side_kick","side_flip"]},"Uzbekistan":{"minScore":11000,"required":["picky_eater","ghost_coins","bigger_explosions"],"forbidden":["base_combo","clairvoyant","implosions"]},"Pakistan":{"minScore":11100,"required":["nbricks","ghost_coins","trampoline"],"forbidden":["picky_eater","clairvoyant","corner_shot"]},"Korea":{"minScore":11200,"required":["puck_repulse_ball","ball_attracts_coins","ball_repulse_ball"],"forbidden":["ghost_coins","picky_eater","etherealcoins"]},"Chile":{"minScore":11300,"required":["shocks","sapper","pierce"],"forbidden":["etherealcoins","ball_attracts_coins","ghost_coins"]},"Türkiye":{"minScore":11400,"required":["compound_interest","fountain_toss","concave_puck"],"forbidden":["bigger_explosions","superhot","respawn"]},"Taj Mahal":{"minScore":11500,"required":["asceticism","soft_reset","streak_shots"],"forbidden":["concave_puck","ball_attract_ball","hot_start"]},"Abstract 7":{"minScore":11600,"required":["hot_start","nbricks","streak_shots"],"forbidden":["trampoline","smaller_puck","superhot"]},"Abstract 9":{"minScore":11700,"required":["implosions","smaller_puck","right_is_lava"],"forbidden":["base_combo","sturdy_bricks","hot_start"]},"Crosshair":{"minScore":11800,"required":["pierce","pierce_color","left_is_lava"],"forbidden":["sapper","transparency","shocks"]},"Abstract 10":{"minScore":11900,"required":["transparency","ball_attract_ball","left_is_lava"],"forbidden":["pierce_color","rainbow","passive_income"]},"Face":{"minScore":12000,"required":["rainbow","corner_shot","bricks_attract_coins"],"forbidden":["base_combo","clairvoyant","respawn"]},"Eiffel tower":{"minScore":12100,"required":["shocks","sapper","clairvoyant"],"forbidden":["passive_income","picky_eater","pierce"]},"Abstract 11":{"minScore":12200,"required":["picky_eater","nbricks","addiction"],"forbidden":["minefield","sturdy_bricks","ghost_coins"]},"Abstract 12":{"minScore":12300,"required":["ghost_coins","sacrifice","ball_attracts_coins"],"forbidden":["concave_puck","picky_eater","compound_interest"]},"Abstract 13":{"minScore":12400,"required":["ball_attract_ball","streak_shots","ghost_coins"],"forbidden":["passive_income","sacrifice","picky_eater"]},"Abstract 14":{"minScore":12500,"required":["smaller_puck","asceticism","rainbow"],"forbidden":["bricks_attract_ball","soft_reset","respawn"]},"S":{"minScore":12600,"required":["pierce","sapper","shocks"],"forbidden":["etherealcoins","trampoline","pierce_color"]},"Abstract 15":{"minScore":12700,"required":["forgiving","viscosity"],"forbidden":["fountain_toss","transparency","left_is_lava"]},"Mario!":{"minScore":12800,"required":["unbounded","limitless","viscosity"],"forbidden":["forgiving","skip_last","ball_attract_ball"]},"Minesweeper":{"minScore":12900,"required":["ottawa_treaty","skip_last","unbounded"],"forbidden":["limitless","viscosity","forgiving"]},"Target":{"minScore":13000,"required":["skip_last","implosions","base_combo"],"forbidden":["etherealcoins","reach","three_cushion"]},"The Boys":{"minScore":13100,"required":["concave_puck","respawn","rainbow"],"forbidden":["reach","corner_shot","skip_last"]},"A Very Dangerous High-Five":{"minScore":13200,"required":["side_kick","rainbow","corner_shot"],"forbidden":["streak_shots","reach","clairvoyant"]},"Blinky":{"required":["clairvoyant","reach","double_or_nothing"],"forbidden":["nbricks","corner_shot","smaller_puck"],"minScore":13300},"Fish":{"required":["reach","pierce","picky_eater"],"forbidden":["sapper","shocks","ghost_coins"],"minScore":13400},"Spider":{"required":["transparency","ghost_coins","left_is_lava"],"forbidden":["pierce_color","reach","sticky_coins"],"minScore":13500},"Gliders":{"required":["trampoline","superhot","bricks_attract_ball"],"forbidden":["reach","rainbow","ghost_coins"],"minScore":13600},"Lone island":{"required":["reach","passive_income","happy_family"],"forbidden":["bigger_explosions","wrap_right","ghost_coins"],"minScore":13700},"Spacewyrm Jon":{"required":["nbricks","reach","three_cushion"],"forbidden":["happy_family","metamorphosis","hot_start"],"minScore":13800},"Taijitu":{"required":["hot_start","puck_repulse_ball","ball_repulse_ball"],"forbidden":["helium","pierce","etherealcoins"],"minScore":13900},"Egg pan":{"required":["hot_start","streak_shots","implosions"],"forbidden":["concave_puck","bricks_attract_coins","base_combo"],"minScore":14000},"Inception":{"required":["hot_start","wrap_left","smaller_puck"],"forbidden":["streak_shots","superhot","bricks_attract_coins"],"minScore":14100},"Chess":{"required":["respawn","wrap_left","sapper"],"forbidden":["shocks","metamorphosis","pierce"],"minScore":14200}}'));function rU(e,r){if(rN[r])return rN[r];var a={required:[],forbidden:[],minScore:Math.max(-1e3+100*e,0)};if(e>20){var t=B(ek).slice(0,Math.floor(e/2)).filter(function(e){var r;return r=e.id,p||(p=new Set(["extra_levels","extra_life","one_more_choice","shunt","slow_down"]),ek.forEach(function(e){e.requires&&p.add(e.requires)})),!p.has(r)}).sort(function(r,a){return eb(e+r.id)-eb(e+a.id)}).map(function(e){return e.id}),n=Math.min(3,Math.ceil(e/30));a.required=t.slice(0,n),a.forbidden=t.slice(n,n+n)}return a}function rK(e){var r,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return(r=Math).max.apply(r,[0].concat(B(e.filter(function(e){return!a.find(function(r){var a;return!(null==e?void 0:null===(a=e.perks)||void 0===a?void 0:a[r])})&&!t.find(function(r){var a;return null==e?void 0:null===(a=e.perks)||void 0===a?void 0:a[r]})}).map(function(e){return e.score}))))}function rY(e,r,a){var t=rU(e,r),n=t.required,i=t.forbidden,_=t.minScore;return rK(a,n,i)<_}function rX(e,r,a,t){var n=rU(e,r),i=n.required,_=n.forbidden,s=n.minScore,o=rK(a,i,_),l=o&&t?et("unlocks.reached",{reached:o}):"";return o>=s?null:i.length||_.length?{reached:o,minScore:s,text:et("unlocks.minScoreWithPerks",{minScore:s,required:i.map(function(e){return rJ(e)}).join(", "),forbidden:_.map(function(e){return rJ(e)}).join(", ")})+l}:{reached:o,minScore:s,text:et("unlocks.minScore",{minScore:s})+l}}function rJ(e){return ek.find(function(r){return r.id==e}).name}function r$(){return rQ.apply(this,arguments)}function rQ(){return(rQ=(0,W._)(function(){var e,r,a,t,n;return(0,M.__generator)(this,function(i){switch(i.label){case 0:e=V("creativeModePerks",{}),r=V("custom_levels",[]).map(eS),i.label=1;case 1:return(t=(a=B(eq.map(function(e,r){var a,t=(null===(a=rX(r,e.name,r2,!0))||void 0===a?void 0:a.text)||"";return{icon:ez[e.name],text:e.name,value:e,disabled:!!t,tooltip:t||eB(e),className:""}})).concat(B(r.map(function(e){return{icon:ey(e.bricks,e.size),text:e.name,value:e,disabled:!e.bricks.filter(function(e){return"_"!==e}).length,tooltip:eB(e),className:""}})))).find(function(e){return e.text===V("creativeModeLevel","")})||a[0]).className="highlight",[4,rE({title:et("lab.menu_entry"),className:"actionsAsGrid",content:[{icon:ez["icon:reset"],value:"reset",text:et("lab.reset"),disabled:!eO(e)},{icon:ez["icon:new_run"],value:"play",text:et("lab.play"),disabled:!eO(e)},et("lab.instructions")].concat(B(ek.filter(function(e){return!ec.includes(e.id)}).map(function(r){return{icon:ez["icon:"+r.id],text:r.name,help:(e[r.id]||0)+"/"+(r.max+(e.limitless||0)),value:r,className:" upgrade "+(e[r.id]?" highlight":" not-highlighed"),tooltip:r.help(e[r.id]||1)}})),[et("lab.select_level")],B(a))})];case 2:if(!(n=i.sent()))return[2];if("reset"!==n)return[3,3];return ek.forEach(function(r){e[r.id]=0}),U("creativeModePerks",e),U("creativeModeLevel",""),[3,6];case 3:if(!("play"===n||"bricks"in n&&n.name==V("creativeModeLevel","")))return[3,5];return[4,a3(a8)];case 4:if(i.sent())return a9({perks:e,level:t.value,isCreativeRun:!0}),[2];return[3,6];case 5:"bricks"in n?U("creativeModeLevel",n.name):n&&(e[n.id]=((e[n.id]||0)+1)%(n.max+1+(e.limitless||0)),U("creativeModePerks",e)),i.label=6;case 6:return[3,1];case 7:return[2]}})})).apply(this,arguments)}function r0(e,r){if(a8.running&&!a8.isGameOver){if(a8.isGameOver=!0,aR(!1),!function(){$.apply(this,arguments)}(),rM(),a=a8.runStatistics.runTime,U("breakout_71_total_play_time",V("breakout_71_total_play_time",0)+a),"number"==typeof a8.startParams.isEditorTrialRun){rI(a8.startParams.isEditorTrialRun),a9({});return}if(a8.startParams.isCreativeRun){r$(),a9({});return}var a,t=Y(),n=t-a8.score,i=ek.filter(function(e){return e.threshold>n&&e.threshold
\n ").concat(e.name,"\n ").concat(e.help(1),"\n
\n".concat(r,"
\n").concat(et("gameOver.cumulative_total",{startTs:n,endTs:t}),"
\n "),{icon:ez["icon:new_run"],value:null,text:et("confirmRestart.yes"),help:""},'',_,function(e){if(e.creative)return"";var r="",a="";try{var t=eq.map(function(e,r){var a;return{li:r,l:e,r:null===(a=rX(r,e.name,r2,!1))||void 0===a?void 0:a.text}}).filter(function(e){return e.r});e.runStatistics.runTime=Math.round(e.runStatistics.runTime);var n=z({},e.perks);for(var i in n)n[i]||delete n[i];r2.push(S(z({},e.runStatistics),{perks:n,appVersion:ew}));var _=t.filter(function(e){var r=e.li,a=e.l;return!rY(r,a.name,r2)});_.length&&(r="\n\n\n ").concat(r.name,"\n ").concat(eB(r),"\n
\n".concat(et("gameOver.stats_intro",{count:r2.length-1}),"
")+a)}catch(e){console.warn(e)}return r+a}(a8),eA(a8)]}).then(function(){return a9({levelToAvoid:eH(a8).name})})}}function r1(e){return e.creative?""+et("gameOver.creative")+"
":""}var r2=[];try{r2=JSON.parse(localStorage.getItem("breakout_71_runs_history")||"[]").sort(function(e,r){return r.score-e.score}).slice(0,100)}catch(e){}function r3(e,r){e.startParams.computer_controlled||(e.puckPosition=r,e.needsRender=!0)}function r4(e){r5(e);var r,a=1+((null===(r=e.perks)||void 0===r?void 0:r.multiball)||0),t=e.puckWidth/(a+1);e.balls=[],e.ballsColor="#FFFFFF",(e.perks.picky_eater||e.perks.pierce_color)&&(e.ballsColor=function(e){var r,a={};e.forEach(function(e){return a[e]=(a[e]||0)+1});var t=(r=Math).max.apply(r,B(Object.keys(a).map(function(e){return a[e]})));return eM(Object.keys(a).filter(function(e){return a[e]==t}))}(e.bricks.filter(function(e){return e}))||"#FFFFFF");for(var n=0;n.5?e.baseSpeed:-e.baseSpeed);e.balls.push({x:i,previousX:i,y:e.gameZoneHeight-1.5*e.ballSize,previousY:e.gameZoneHeight-1.5*e.ballSize,vx:_,previousVX:_,vy:-e.baseSpeed,previousVY:-e.baseSpeed,piercePoints:3*e.perks.pierce,hitSinceBounce:0,brokenSinceBounce:0,sidesHitsSinceBounce:0,sapperUses:0})}e.ballStickToPuck=!0}function r5(e){e.baseSpeed=Math.max(3,e.gameZoneWidth/12/10+e.currentLevel/3+e.levelTime/3e4-2*e.perks.slow_down),e.puckWidth=Math.max(e.ballSize,e.gameZoneWidth/12*Math.min(12,3-e.perks.smaller_puck+e.perks.bigger_puck));var r=eX(e),a=e.offsetXRoundedDown+e.puckWidth/2-r,t=e.offsetXRoundedDown+e.gameZoneWidthRoundedUp-e.puckWidth/2+r;e.puckPosition=ei(e.puckPosition,a,t),e.ballStickToPuck&&function(e){var r=e.balls.length,a=e.puckWidth/(r+1);e.balls.forEach(function(r,t){var n=e.puckPosition-e.puckWidth/2+a*(t+1);r.x=n,r.previousX=n,r.y=e.gameZoneHeight-1.5*e.ballSize,r.previousY=r.y,r.hitSinceBounce=0,r.brokenSinceBounce=0,r.sidesHitsSinceBounce=0,r.piercePoints=3*e.perks.pierce})}(e),Math.abs(e.lastPuckPosition-e.puckPosition)>1&&e.running&&(e.lastPuckMove=e.levelTime),e.lastPuckPosition=e.puckPosition}function r6(e){return 1+3*e.perks.base_combo}function r7(e,r,a){var t=e.combo;e.combo=r6(e),e.perks.double_or_nothing&&t>e.combo&&(e.score=Math.floor(e.score*ei(1-e.perks.double_or_nothing/10,0,1)),an(e,"lifeLost",r,1)),t>e.combo&&e.perks.soft_reset&&(e.combo+=Math.floor((t-e.combo)*e_(e.perks.soft_reset)));var n=Math.max(0,t-e.combo);if(n){for(var i=0;i".concat(et("score_panel.close_to_unlock"),'
\n\n ").concat(_,"\n ").concat(null===(r=t.reason)||void 0===r?void 0:r.text,"\n
\n".concat(et("level_up.before_buttons",{score:e.levelCoughtCoins,catchGain:n,levelSpawnedCoins:e.levelSpawnedCoins,time:Math.round(e.levelTime/1e3),timeGain:t,levelMisses:e.levelMisses,missesGain:_,levelWallBounces:e.levelWallBounces,wallHitsGain:i,compliment:o}),"\n
\n").concat(et("level_up.after_buttons",{level:e.currentLevel+1,max:eE(e)}),"
\n").concat(ej(e,e.currentLevel+1),"
\n")].concat(B(s),[eA(e),aG(e),''])}),{allowClose:!1}))];case 2:return"reroll"===(l=u.sent())?(a++,e.rerolls--):(e.perks[l]++,e.runStatistics.upgrades_picked++),[3,1];case 3:return[2]}})})).apply(this,arguments)}function aA(e,r){return eC(a8,Math.floor(r/a8.brickWidth),Math.floor((e-a8.offsetX)/a8.brickWidth))}function aj(e){if(a8.bricks[e])return e}function aH(e,r,a){var t,n,i;return null!==(i=null!==(n=null!==(t=aj(aA(e-a,r-a)))&&void 0!==t?t:aj(aA(e+a,r-a)))&&void 0!==n?n:aj(aA(e+a,r+a)))&&void 0!==i?i:aj(aA(e-a,r+a))}window.addEventListener("resize",function(){return aT(a8)}),window.addEventListener("fullscreenchange",function(){return aT(a8)}),setInterval(function(){var e=window.innerWidth,r=window.innerHeight;(e!==a8.canvasWidth||r!==a8.canvasHeight)&&aT(a8)},1e3),rt.addEventListener("mouseup",function(e){0===e.button&&(a8.running?aR(!0):(aL(),e0("pointerLock")&&rt.requestPointerLock&&rt.requestPointerLock().then()))}),rt.addEventListener("mousemove",function(e){document.pointerLockElement===rt?r3(a8,a8.puckPosition+e.movementX):r3(a8,e.x)}),rt.addEventListener("touchstart",function(e){var r;e.preventDefault(),(null===(r=e.touches)||void 0===r?void 0:r.length)&&(r3(a8,e.touches[0].pageX),r5(a8),aL())}),rt.addEventListener("touchend",function(e){e.preventDefault(),aR(!0)}),rt.addEventListener("touchcancel",function(e){e.preventDefault(),aR(!0)}),rt.addEventListener("touchmove",function(e){var r;(null===(r=e.touches)||void 0===r?void 0:r.length)&&r3(a8,e.touches[0].pageX)});var aD=document.getElementById("stats"),aF={},aI=performance.now(),aZ="idle",aV=0,aN=60;function aU(e){if(a8.startParams.stress){var r=performance.now();aZ&&(aF[aZ]=(aF[aZ]||0)+(r-aI)),aI=r,aZ=e}}setInterval(function(){if(aN=aV,aV=0,!a8.startParams.stress){aD.style.display="none";return}aD.style.display="block";var e=eO(aF);aD.innerHTML="\n\n ").concat(e.name,"
\n ").concat(e.help(1),"\n
\n ").concat(e.name," \n
\n ").concat(el(e.credit||""),"\n\n Made in France by Renan LE CARO. \n Donate\n Discord\n F-Droid\n Google Play\n itch.io \n Gitlab\n Web version\n HackerNews\n Privacy Policy\n Archives\n v.'.concat(ew,"\n
")]),allowClose:!0})];case 1:return(r=a.sent())&&(r(),a8.needsRender=!0),[2]}})})).apply(this,arguments)}function aJ(){return a$.apply(this,arguments)}function a$(){return(a$=(0,W._)(function(){var e,r,a,t,n,i,_,s,o;return(0,M.__generator)(this,function(l){switch(l.label){case 0:aR(!0),(r=[{disabled:e0("easy"),icon:ez["icon:starting_perks"],text:et("starting_perks.title"),help:et("starting_perks.help"),value:function(){return(0,W._)(function(){return(0,M.__generator)(this,function(e){switch(e.label){case 0:return[4,aW()];case 1:return e.sent(),[2]}})})()}}]).push({icon:ez[null===(e=Q.find(function(e){return e.value===ea()}))||void 0===e?void 0:e.levelName],text:et("settings.language"),help:et("settings.language_help"),value:function(){return(0,W._)(function(){var e,r;return(0,M.__generator)(this,function(a){switch(a.label){case 0:return[4,rE({title:et("settings.language"),content:[et("settings.language_help")].concat(B(Q.map(function(e){return S(z({},e),{icon:ez[e.levelName]})}))),allowClose:!0})];case 1:if(!(r=(e=a.sent())&&e!==ea()))return[3,3];return[4,a3(a8)];case 2:r=a.sent(),a.label=3;case 3:return r&&(U("lang",e),K(),window.location.reload()),[2]}})})()}}),a=!0,t=!1,n=void 0;try{for(i=function(){var e=s.value;eQ[e]&&r.push({icon:e0(e)?ez["icon:checkmark_checked"]:ez["icon:checkmark_unchecked"],text:eQ[e].name,help:eQ[e].help,disabled:e0("basic")&&["extra_bright","contrast","smooth_lighting","precise_lighting","probabilistic_lighting"].includes(e)||!1,value:function(){e1(e),aT(a8),aQ(),aJ()}})},_=Object.keys(eQ)[Symbol.iterator]();!(a=(s=_.next()).done);a=!0)i()}catch(e){t=!0,n=e}finally{try{a||null==_.return||_.return()}finally{if(t)throw n}}return r.push({icon:ez["icon:download"],text:et("settings.download_save_file"),help:et("settings.download_save_file_help"),value:function(){return(0,W._)(function(){var e,r;return(0,M.__generator)(this,function(a){return e=document.createElement("a"),r=JSON.stringify({fileType:"B71-save-file",appVersion:ew,payload:aS()},null,2),e.setAttribute("href","data:application/json;charset=utf-8,"+encodeURIComponent(r)),e.setAttribute("download","b71-save-"+new Date().toISOString().slice(0,19).replace(/[^0-9]+/gi,"-")+".json"),document.body.appendChild(e),e.click(),setTimeout(function(){return document.body.removeChild(e)},1e3),[2]})})()}}),r.push({icon:ez["icon:upload"],text:et("settings.load_save_file"),help:et("settings.load_save_file_help"),value:function(){return(0,W._)(function(){var e,r;return(0,M.__generator)(this,function(a){if(!document.getElementById("save_file_picker")){var t;(r=document.createElement("input")).setAttribute("type","file"),r.setAttribute("id","save_file_picker"),r.setAttribute("accept",".b71,.json"),r.style.position="absolute",r.style.left="-1000px",r.addEventListener("change",(t=(0,W._)(function(e){var a,t,n,i,_,s,o,l;return(0,M.__generator)(this,function(e){switch(e.label){case 0:if(e.trys.push([0,4,,6]),!(t=r&&(null===(a=r.files)||void 0===a?void 0:a.item(0))))return[3,3];return[4,new Promise(function(e,r){var a=new FileReader;a.onload=function(){var r;e((null===(r=a.result)||void 0===r?void 0:r.toString())||"")},a.onerror=function(){r(a.error)},a.readAsText(t)})];case 1:if(i=(n=JSON.parse(e.sent())).fileType,_=n.signedPayload,s=n.payload,"B71-save-file"!==i)throw Error("Not a B71 save file");if(s)for(var u in localStorage.clear(),s)localStorage.setItem(u,JSON.stringify(s[u]));else if(_)for(var c in o=JSON.parse(_),localStorage.clear(),o)localStorage.setItem(c,o[c]);return[4,rE({title:et("settings.save_file_loaded"),content:[et("settings.save_file_loaded_help"),{text:et("settings.save_file_loaded_ok")}]})];case 2:e.sent(),window.location.reload(),e.label=3;case 3:return[3,6];case 4:return l=e.sent(),[4,rE({title:et("settings.save_file_error"),content:[l.message,{text:et("settings.save_file_loaded_ok")}]})];case 5:return e.sent(),[3,6];case 6:return r.value="",[2]}})}),function(e){return t.apply(this,arguments)})),document.body.appendChild(r)}return null===(e=document.getElementById("save_file_picker"))||void 0===e||e.click(),[2]})})()}}),r.push({icon:ez["icon:coins"],text:et("settings.max_coins",{max:X()}),help:et("settings.max_coins_help"),value:function(){return(0,W._)(function(){return(0,M.__generator)(this,function(e){switch(e.label){case 0:return U("max_coins",(V("max_coins",2)+1)%7),[4,aJ()];case 1:return e.sent(),[2]}})})()}}),r.push({icon:ez["icon:reset"],text:et("settings.reset"),help:et("settings.reset_help"),value:function(){return(0,W._)(function(){return(0,M.__generator)(this,function(e){switch(e.label){case 0:return[4,rE({title:et("settings.reset"),content:[et("settings.reset_instruction"),{text:et("settings.reset_confirm"),value:!0},{text:et("settings.reset_cancel"),value:!1}],allowClose:!0})];case 1:return e.sent()&&(localStorage.clear(),window.location.reload()),[2]}})})()}}),r.push({text:et("settings.autoplay"),help:et("settings.autoplay_help"),value:function(){return(0,W._)(function(){return(0,M.__generator)(this,function(e){return te(!1),[2]})})()}}),r.push({text:et("settings.stress_test"),help:et("settings.stress_test_help"),value:function(){return(0,W._)(function(){return(0,M.__generator)(this,function(e){return te(!0),[2]})})()}}),[4,rE({title:et("main_menu.settings_title"),content:[et("main_menu.settings_help")].concat(B(r)),allowClose:!0,className:"settings"})];case 1:return(o=l.sent())&&(o(),a8.needsRender=!0),[2]}})})).apply(this,arguments)}function aQ(){return a0.apply(this,arguments)}function a0(){return(a0=(0,W._)(function(){var e;return(0,M.__generator)(this,function(r){switch(r.label){case 0:if(r.trys.push([0,10,,11]),!(document.fullscreenEnabled||document.webkitFullscreenEnabled))return[2,!1];if(!(null!==document.fullscreenElement&&!e0("fullscreen")))return[3,5];if(!document.exitFullscreen)return[3,2];return[4,document.exitFullscreen()];case 1:case 3:case 6:case 8:return r.sent(),[2,!0];case 2:if(!document.webkitCancelFullScreen)return[3,4];return[4,document.webkitCancelFullScreen()];case 4:return[3,9];case 5:if(!(e0("fullscreen")&&!document.fullscreenElement))return[3,9];if(!(e=document.documentElement).requestFullscreen)return[3,7];return[4,e.requestFullscreen()];case 7:if(!e.webkitRequestFullscreen)return[3,9];return[4,e.webkitRequestFullscreen()];case 9:return[3,11];case 10:return console.warn(r.sent()),[3,11];case 11:return[2,!1]}})})).apply(this,arguments)}function a1(){return(a1=(0,W._)(function(){var e,r,a;return(0,M.__generator)(this,function(t){switch(t.label){case 0:return e=Y(),r=ek.map(function(r){var a=r.name,t=r.id,n=r.threshold,i=r.help,_=r.category,s=r.fullHelp;return{text:a,disabled:er6(a8),r=e&&a8.perks.picky_eater&&eD(a8),a=eF(a8),t=a8.perks.clairvoyant,n=rS(a8);r||-1!==a||a8.perks.zen||(n=0);var i=t&&a8.brickHP.reduce(function(e,r){return e+r},0),_=a8.gameZoneWidth+"_"+a8.bricks.join("_")+ri.complete+"_"+a+"_"+r+"_"+a8.ballsColor+"_"+a8.perks.pierce_color+"_"+i+"_"+n;if(_!==rm){rm=_,rp.width=a8.gameZoneWidth,rp.height=a8.gameZoneWidth+1;var s=rp.getContext("2d");s.clearRect(0,0,a8.gameZoneWidth,a8.gameZoneWidth),s.resetTransform(),s.translate(-a8.offsetX,0),a8.bricks.forEach(function(i,_){var o=eP(a8,_),l=eL(a8,_);if(i){var u=a===Math.floor(_/a8.level.size),c=a8.ballsColor!==i&&"black"!==i&&r||e&&a8.perks.zen&&"black"===i||u;s.globalCompositeOperation="source-over",ry(a8,s,i,o,l,c?n:-1,t>=2),a8.brickHP[_]>1&&t&&(s.globalCompositeOperation="source-over",rk(s,a8.brickHP[_].toString(),t>=2?i:a8.level.color,a8.puckHeight,o,l)),"black"===i&&(s.globalCompositeOperation="source-over",function(e,r,a,t,n){var i="svg"+r+"_"+a+"_"+r.complete;if(!rg[i]){var _=document.createElement("canvas");_.width=a,_.height=a;var s=_.getContext("2d"),o=a/Math.max(r.width,r.height),l=r.width*o,u=r.height*o;s.drawImage(r,(a-l)/2,(a-u)/2,l,u),rg[i]=_}e.drawImage(rg[i],Math.round(t-a/2),Math.round(n-a/2))}(s,ri,a8.brickWidth,o,l))}})}rn.drawImage(rp,a8.offsetX,0)}(),aU("render:lights"),rn.globalCompositeOperation="screen",av(e.lights,function(r){var a=r.x,t=r.y,n=r.time,i=r.color,_=(r.size,r.duration);rn.globalAlpha=.5*Math.min(1,2-(e.levelTime-n)/_*2),ry(e,rn,i,a,t,-1,e.perks.clairvoyant>=2)}),aU("render:texts"),rn.globalCompositeOperation="screen",av(e.texts,function(r){var a=r.x,t=r.y,n=r.time,i=r.color,_=r.size,s=r.duration,o=e.levelTime-n;rn.globalAlpha=Math.max(0,Math.min(1,2-o/s*2)),rn.globalCompositeOperation="source-over",rk(rn,r.text,i,_,a,t-o/10)}),aU("render:particles"),av(e.particles,function(r){var a=r.x,t=r.y,n=r.time,i=r.color,_=r.size,s=r.duration;rn.globalAlpha=Math.max(0,Math.min(1,2-(e.levelTime-n)/s*2)),rn.globalCompositeOperation="screen",rb(rn,i,_,a,t)}),aU("render:extra_life"),e.perks.extra_life){rn.globalAlpha=e.balls.length>1?.2:1,rn.globalCompositeOperation="source-over",rn.fillStyle=e.puckColor;for(var k=0;k